/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package server.negocio;

import server.excepciones.UsuarioYaExistenteException;
import java.rmi.RemoteException;
import java.sql.SQLException;
import server.excepciones.UsuarioIncorrectoException;

/**
 *
 * @author tpaxle
 */
public class Controlador_MensajeAux {

    private Controlador_G_Usuarios c_g_usuarios;
    private Controlador_Servidor c_servidor;
    private Controlador_Horario C_Horario;
    private Controlador_G_Citas C_Citas;

    public Controlador_MensajeAux(Controlador_Servidor c_servidor, Controlador_G_Usuarios c_g_usuarios, Controlador_Horario c_horario, Controlador_G_Citas C_citas) {
        this.c_g_usuarios= c_g_usuarios;
        this.c_servidor= c_servidor;
        this.C_Horario= c_horario;
        C_citas= C_citas;
    }


    //Codigos de mensaje
        //1. el usuario con idSesion(que debe ser administrador) pide todos los usuarios
    public void analizarmensajeAuxiliar(long idSesion, long codigoDeMensaje, Object informacion) throws SQLException, UsuarioIncorrectoException, RemoteException, Exception, UsuarioYaExistenteException {
        switch((int)codigoDeMensaje){
            case 1:
                //1.- PIDE los datos de los Usuarios y Beneficiarios
                c_g_usuarios.obtenerDatosTablas(idSesion);
                break;
            case 2:
                //2.- Obtiene los datos de los Centros
                c_g_usuarios.obtenerDatosCentro(idSesion);
                break;
            case 3:
                //3.- Insercion de usuario normal
                c_g_usuarios.crearUsuario(idSesion, informacion);
                break;
            case 4:
                //4.- Borrado de Usuario normal
                c_g_usuarios.borrarUsuario(idSesion, informacion);
                break;
            case 5:
                //5.- Modificar usuario medico
                c_g_usuarios.modificarUsuarioM(idSesion, informacion);
                break;
            case 6:
                c_g_usuarios.modificarUsuario(idSesion, informacion);
                break;
            case 7:
                c_g_usuarios.obtenerDatosMedicos(idSesion, informacion);
                break;
            case 8:
                C_Horario.peticionhorario(idSesion, informacion);
                break;
            case 9:
                C_Horario.formatearhorario(idSesion, informacion);
                break;
            case 10:
               C_Citas.getCitasMedico(idSesion, informacion);
               break;
        }
    }

}
